package com.reliable.api.param.ReliableTransactionRecord;

import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.math.BigDecimal;
import java.util.Date;
import java.util.List;

@Data
@ApiModel("交易记录更新参数")
public class ReliableTransactionRecordUpdateParam {
    /**
     * 交易ID
     */
    @ApiModelProperty(value = "交易ID", position = 0)
    private String transactionId;

    /**
     * 业务交易ID
     */
    @ApiModelProperty(value = "业务交易ID", position = 1)
    private String businessTransactionId;

    /**
     * 任务ID
     */
    @ApiModelProperty(value = "任务ID", position = 2)
    private Long taskId;

    /**
     * 会话ID
     */
    @ApiModelProperty(value = "会话ID", position = 3)
    private String sessionId;

    /**
     * 业务会话ID
     */
    @ApiModelProperty(value = "业务会话ID", position = 4)
    private String businessSessionId;

    /**
     * 账户类型
     */
    @ApiModelProperty(value = "账户类型", position = 5)
    private String accountType;

    /**
     * 平台名称
     */
    @ApiModelProperty(value = "平台名称", position = 6)
    private String platformName;

    /**
     * 账户分类
     */
    @ApiModelProperty(value = "账户分类", position = 7)
    private String accountCategory;

    /**
     * 充值方式总结
     */
    @ApiModelProperty(value = "充值方式总结", position = 8)
    private String rechargeMethodSummary;

    /**
     * 账号标识
     */
    @ApiModelProperty(value = "账号标识", position = 9)
    private String accountIdentifier;

    /**
     * 二维码URL列表
     */
    @ApiModelProperty(value = "二维码URL列表", position = 10)
    private List<String> qrCodeUrls;

    /**
     * 支付平台名称
     */
    @ApiModelProperty(value = "支付平台名称", position = 11)
    private String paymentPlatformName;

    /**
     * 金额或数量
     */
    @ApiModelProperty(value = "金额或数量", position = 12)
    private BigDecimal amountOrQuantity;

    /**
     * 支付描述
     */
    @ApiModelProperty(value = "支付描述", position = 13)
    private String paymentDescription;

    /**
     * 是否成功
     */
    @ApiModelProperty(value = "是否成功", position = 14)
    private Boolean isSuccess;

    /**
     * 是否有回执
     */
    @ApiModelProperty(value = "是否有回执", position = 15)
    private Boolean hasReceiptProof;

    /**
     * 回执图片URL列表
     */
    @ApiModelProperty(value = "回执图片URL列表", position = 16)
    private List<String> proofImageUrls;

    /**
     * 交易细节描述
     */
    @ApiModelProperty(value = "交易细节描述", position = 17)
    private String transactionSummary;

    /**
     * 原始对话句子
     */
    @ApiModelProperty(value = "原始对话句子", position = 18)
    private List<String> relatedOriginalSentences;

    /**
     * 受害者姓名
     */
    @ApiModelProperty(value = "受害者姓名", position = 19)
    private String victimName;

    /**
     * 收件人姓名
     */
    @ApiModelProperty(value = "收件人姓名", position = 20)
    private String recipientName;

    /**
     * 完整收货/交付地址
     */
    @ApiModelProperty(value = "完整收货/交付地址", position = 21)
    private String fullAddress;

    /**
     * 联系电话
     */
    @ApiModelProperty(value = "联系电话", position = 22)
    private String contactPhone;

    /**
     * 交付方式
     */
    @ApiModelProperty(value = "交付方式", position = 23)
    private String deliveryMethod;

    /**
     * 身份证号
     */
    @ApiModelProperty(value = "身份证号", position = 24)
    private String idNumber;

    /**
     * 创建人ID
     */
    @ApiModelProperty(value = "创建人ID", position = 25)
    private Long createBy;

    /**
     * 创建时间
     */
    @ApiModelProperty(value = "创建时间", position = 26)
    private Date createTime;

    /**
     * 更新人ID
     */
    @ApiModelProperty(value = "更新人ID", position = 27)
    private Long updateBy;

    /**
     * 更新时间
     */
    @ApiModelProperty(value = "更新时间", position = 28)
    private Date updateTime;

    /**
     * 逻辑删除标志：0=未删除, 1=已删除
     */
    @ApiModelProperty(value = "逻辑删除标志：0=未删除, 1=已删除", position = 29)
    private Integer delFlag;
}